首页 > 试题广场 >

提取不重复的整数

[编程题]提取不重复的整数
  • 热度指数:519215 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
输入一个 int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
保证输入的整数最后一位不是 0 。

数据范围:

输入描述:

输入一个int型整数



输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

示例1

输入

9876673

输出

37689
import traceback #严谨版 try:
    num=str(input())
    numb=int(num)
    empty_list=[]  if numb in range(1, 10 ** 8):
        numb_reverse = num[::-1]  for e in numb_reverse:  if e in empty_list:  continue  else:
                empty_list.append(e)  print(e,end='') #这个妙,就不用for循环输出列表里的数字了。     else: print("over number range") except Exception as mistake:  print('content is wrong, tip is [{}]'.format(str(mistake)))

编辑于 2024-03-06 22:25:43 回复(0)
import sys
input_str=input()#接收输入
N=len(input_str)#计算输入的长度
single_str=[]#定义一个列表,用于存放不重复的数字
for i in range(N):#遍历
    if input_str[N-1-i] not in single_str:#倒序遍历,如果这个数不在single_str里面
        single_str.append(input_str[N-1-i])#就把这个数加到single_str里面
output="".join(single_str)#把列表转换成字符串,用于输出
print(output)#输出结果

发表于 2023-09-04 13:50:54 回复(0)
# 方法1:
print(''.join(list({}.fromkeys(str1).keys())))

# 方法2:
import collections
print(''.join(list(collections.Counter(str1).keys())))

# 放放3:
str_num = input()[::-1]
print("".join(i for idx, i in enumerate(str_num) if i not in str_num[:idx]))

# 方法4:
def fun(str1: str, list1=[]) -> str:
    for i in str1[::-1]:
        if i not in list1:
            list1.append(i)
    return ''.join(list1)


print(fun(input()))

发表于 2023-06-20 12:32:06 回复(0)
my_list = list(input())
i=-1 m=1 new_list=[] while m<=len(my_list): if my_list[i] in new_list: pass  else:
        new_list.append(my_list[i]) # print(my_list[i],end='')  i -= 1  m+=1 for n in new_list: print(n,end='')
发表于 2023-03-08 22:03:33 回复(0)
a = input()
x = list(a)
for y in x:
    while x.count(y)>1:
        x.remove(y)
x.reverse()
for t in x:
    print(t,end="")
发表于 2023-02-09 14:34:46 回复(0)
str1 = input()
str2 = ''
for i in str1[::-1]:
    if i in str2:
        continue
    else:
        str2 = str2 + i
print(int(str2))
发表于 2022-09-13 01:37:22 回复(0)
a=str(input())
a=a[::-1]
b=[]
for i in a:
    if i not in b:
        b.append(i)
print("".join(map(str,b)))
发表于 2022-09-04 13:07:11 回复(0)
num = str(input())
newnum = num[::-1]
new = list(set(newnum))
#避免set去重后的乱序
new.sort(key=newnum.index)
for i in new:
    print(i,end='')

发表于 2022-09-01 23:39:09 回复(0)
s1 = input()
# 反转
s2 = ""
result_list = []
for i in range(1,len(s1)+1):
    s2 = s2+s1[-i]
# 去重,打印
for s in s2:
    if s not in result_list:
        result_list.append(s)
        print(s, end="")
发表于 2022-08-29 09:49:55 回复(0)
list=input()
list=list[::-1]
list1=[]
for i in list:
    if i in list1:
        continue
    else:
        list1.append(i)
print(''.join(list1))
发表于 2022-08-27 22:05:08 回复(0)
当字符串处理吧,从左到右遍历,如果出现次数大于1,就把次数-1的该字符替换为空字符串,确保每个字符只出现一次,再切片倒序输出
s = input()
for i in s:
    if s.count(i) > 1: 
        s = s.replace(i, '', s.count(i)-1)
if s[-1] == "0":
    s = s.replace('0', '')
print(s[::-1])

发表于 2022-08-24 13:28:53 回复(0)
a=input()
#print(a[-1])
num1=-1
list1=[]
b=len(a)
for i in range(b):
     if a[num1] not in list1:
         list1.append(a[num1])
     num1=num1-1
print(int("".join(list1)))
发表于 2022-08-24 00:56:23 回复(0)
num=int(input())
if num%10==0:
    print('输入的整数最后一位不能为0,请重新输入!')
    num=int(input())
st=str(num)[::-1]
a=set()
for i in st:
    if i in a:
        continue
    else:
        a.add(i)
        print(i,end='')

发表于 2022-08-23 13:22:10 回复(0)
a=input()
new_a=reversed([int(i) for i in a])
all_b=[]
for j in new_a:
    if j not in all_b:
        all_b.append(j)
for i in all_b:
    print(i,end='')
开心
发表于 2022-08-14 23:22:14 回复(0)
while True:
    try:
        num = input()
        num_new = num[::-1]
        mid_lst = []
        mid_dic = {}
        for i in num_new:
            if mid_dic.get(i, 'no') == 'no':
                mid_lst.append(i)
                mid_dic[i] = 'yes'
            else:
                pass
        print(''.join(mid_lst))
    except:
        break

发表于 2022-08-11 22:46:48 回复(0)
def new_num(n):
    if n % 10 == 0:
        return False
    else:
        n = str(n)[::-1]
    result = ''
    for i in n:
        if i not in result:
            result += i
    print(int(result))

    
new_num(int(input()))


发表于 2022-07-28 09:33:11 回复(0)
number = input()[::-1]
num = ""
for n in number:
    if n not in num:
        num += n
print(num)

发表于 2022-07-27 18:30:00 回复(0)
num=input()
list1=list(num)[::-1]

new_list=[]
for i in list1:
    if i in new_list:
        pass
    else:
        new_list.append(i)
        
#列表转换为字典
new_list="".join(new_list)
print(new_list)

发表于 2022-07-27 00:13:25 回复(0)
想问一下,这道题怎么靠的哈希
发表于 2022-07-18 00:34:08 回复(0)

问题信息

难度:
102条回答 90674浏览

热门推荐

通过挑战的用户

查看代码